# 使用官方 Python 镜像
FROM python:3.10-slim

# 设置环境变量
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1
ENV DEBIAN_FRONTEND=noninteractive

# 设置工作目录
WORKDIR /app

# 【最终修复】
# 1. 先只复制 requirements.txt 并安装依赖，以利用 Docker 的层缓存机制。
COPY requirements.txt .
RUN pip install --no-cache-dir --upgrade pip && \
    pip install --no-cache-dir -r requirements.txt

# 2. 复制主应用文件和 app 包到工作目录。
#    这确保了 /app 目录下直接就是 main.py 和 app/ 文件夹，
#    从而避免了 /app/app/ 的嵌套结构。
COPY main.py .
COPY app/ ./app/

# 暴露端口
EXPOSE 8000

# 启动命令
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"]
